Windows下搭建Ruby on Rails开发环境

基于一些原因,需要使用windows系统来开发Rails, 在网上搜了很久,尝试了很多次之后终于配置成功了。由于Rails的版本问题,出现了很多莫名的问题,现在写下来做一下总结。当然如果觉得麻烦其实可以使用Instant Rails,不过这东西版本太低,而且如果自己手动配置的话,对于整个框架的运行有比较好的了解。

首先确定一下前端的web 服务器使用Nginx来跑,然后Rails的话用Mongrel Service 安装windows 服务,使用Nginx来监听。

Rails方面很方便,下载Ruby安装包然后安装。 一般会自动把Ruby添加到系统Path里面去,之后看一下gem版本。 控制台上输入 gem -v, 最好升级到最高的吧,推荐到rubyforge.org 去下载,然后安装,速度会快点

接下来安装几个重要的gem, 如:rails, mongrel_service, 安装这几个gem时,会自动安装多个,具体可以输入 gem list 查看。Rail的安装比较简单,只是要注意数据库的问题,因为现在rails默认是sqlite的数据库,所以如果是mysql的话,记得把mysql里面的libmySQL.dll 文件拷贝到系统路径下。安装mongrel的时候碰到有2个地方比较麻烦,1个是gem的版本,开始下载了个比较低的,老是出错, 所以装个版本高的, 命令如下

gem install mongrel_service -v '0.3.4'

第2个问题就是平台问题,一定不要忘记下载win32的, 命令如下

gem install mongrel_service --platform x86-mswin32。

这里贴出来本人机器上安装的gem。

actionmailer (2.3.4)
actionpack (2.3.4)
activerecord (2.3.4)
activeresource (2.3.4)
activesupport (2.3.4)
cgi_multipart_eof_fix (2.5)
fxri (0.3.6)
fxruby (1.6.12 mswin32)
gem_plugin (0.2.3)
hpricot (0.6 mswin32)
log4r (1.0.5)
mongrel (1.1.5 x86-mswin32)
mongrel_cluster (1.0.5)
mongrel_service (0.3.4 i38)
mysql (2.8.1 x86-mswin32)
rack (1.0.1)
rails (2.3.4)
rake (0.8.7, 0.7.3)
rubygems-update (1.3.7, 1.)
sources (0.0.1)
win32-api (1.4.6 x86-mswin)
win32-clipboard (0.4.3)
win32-dir (0.3.2)
win32-eventlog (0.4.6)
win32-file (0.5.4)
win32-file-stat (1.2.7)
win32-process (0.5.3)win32-sapi (0.1.4)
win32-service (0.7.1 x86-m
win32-sound (0.4.1)
windows-api (0.4.0, 0.2.0)
windows-pr (1.0.9, 0.7.2)

之后的就好处理了,安装windows 服务,命令如下(-N后面是服务名称,-c是路径,之后是监听的端口和版本):

mongrel_rails service::install -N sample -c X:\sample -p 3001 -e development

删除服务

mongrel_rails service::remove -N sample

之后就是Nginx的配置,贴一下location的部分,监听的端口一致就可以了,另外注意root部分一定要是rails项目的public目录。

location / {
    proxy_pass http://127.0.0.1:3001;
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

好了,重启一下Nginx服务,就可以看到Rails的页面了。